bitkeeper revision 1.1159.187.67 (41bf7064JLmIpzjd7PLO18qfijLBrA)
authorkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>
Tue, 14 Dec 2004 22:59:48 +0000 (22:59 +0000)
committerkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>
Tue, 14 Dec 2004 22:59:48 +0000 (22:59 +0000)
Avoid backtraces from Python console client.

tools/misc/xencons
tools/python/xen/util/console_client.py

index 7ac63aeb75379f3a0ce7ce5feb8a7dc597915611..5882a60c63c8ad8bff3049424b6ce72df7d8834e 100755 (executable)
@@ -27,24 +27,33 @@ def __recv_from_sock(sock):
     while not stop:
         try:
             data = sock.recv(1024)
-            os.write(1, data)
         except socket.error, error:
             if error[0] != errno.EINTR:
                 raise
+        try:
+            os.write(1, data)
+        except os.error, error:
+            if error[0] != errno.EINTR:
+                raise
     os.wait()
 
 def __send_to_sock(sock):
     while 1:
-        data = os.read(0,1024)
-        if ord(data[0]) == ord(']')-64:
-            break
         try:
-            sock.send(data)
-        except socket.error, error:
-            if error[0] == errno.EPIPE:
-                sys.exit(0)
+            data = os.read(0,1024)
+        except os.error, error:
             if error[0] != errno.EINTR:
                 raise
+        else:
+            if ord(data[0]) == ord(']')-64:
+                break
+            try:
+                sock.send(data)
+            except socket.error, error:
+                if error[0] == errno.EPIPE:
+                    sys.exit(0)
+                if error[0] != errno.EINTR:
+                    raise
     sys.exit(0)
 
 def connect(host,port):
index 7ac63aeb75379f3a0ce7ce5feb8a7dc597915611..5882a60c63c8ad8bff3049424b6ce72df7d8834e 100644 (file)
@@ -27,24 +27,33 @@ def __recv_from_sock(sock):
     while not stop:
         try:
             data = sock.recv(1024)
-            os.write(1, data)
         except socket.error, error:
             if error[0] != errno.EINTR:
                 raise
+        try:
+            os.write(1, data)
+        except os.error, error:
+            if error[0] != errno.EINTR:
+                raise
     os.wait()
 
 def __send_to_sock(sock):
     while 1:
-        data = os.read(0,1024)
-        if ord(data[0]) == ord(']')-64:
-            break
         try:
-            sock.send(data)
-        except socket.error, error:
-            if error[0] == errno.EPIPE:
-                sys.exit(0)
+            data = os.read(0,1024)
+        except os.error, error:
             if error[0] != errno.EINTR:
                 raise
+        else:
+            if ord(data[0]) == ord(']')-64:
+                break
+            try:
+                sock.send(data)
+            except socket.error, error:
+                if error[0] == errno.EPIPE:
+                    sys.exit(0)
+                if error[0] != errno.EINTR:
+                    raise
     sys.exit(0)
 
 def connect(host,port):